Web-enabled conferencing and meeting implementations with a subscription-based model

ABSTRACT

Meeting and conferencing systems and methods are implemented in a variety of manners. Consistent with an embodiment of the present disclosure, a meeting system is implemented that includes a computer server arrangement with at least one processor. The computer server arrangement is configured to provide a web-based meeting-group subscription option to potential meeting participants. A meeting scheduling data is received over a web-accessible virtual meeting interface. The meeting scheduling data includes group identification information and meeting time information. In response to the group identification information, participant identification information is retrieved for participants that subscribe to a meeting group identified by the group identification information. In response to the meeting time information and the participant identifying information, audio connections are established for participants of the meeting. Merged audio from the established audio connections is provided to the participants over the established audio connections.

FIELD OF THE INVENTION

The present invention relates generally to conferencing and meetingmechanisms and to systems, methods and devices for facilitating meetingsconducted using data shared over the Internet.

BACKGROUND

The ability to conduct productive and efficient meetings can be animportant aspect of the success of the related endeavor, whether theendeavor is business, learning or otherwise. The ability to easilyconvey different types of information in an effective manner to andbetween participants is paramount to the success of a meeting. Keepingmeetings productive and efficient is difficult enough when each of theparticipants is physically at the same location. Many meetings, however,include at least one participant from a remote location. In extremecases, the entire meeting can consist of remote participants. Remoteconferences present a host of issues in addition to those issues thatpresent themselves in an in-person meeting.

A number of remote meeting solutions attempt to address one or more ofthese issues. Telephone conferencing allows multiple participants tospeak with one another. Computer applications allow remote participantsto view slides, shared applications and other data. Coordination ofmeeting times and connection information is sometimes implemented usingcalendaring software and/or email. These and other solutions, however,are often frustrated by a vast array of different meeting requirements.These requirements include types of data to be shared, coordination ofparticipants from different locales, different relationships betweenparticipants, technology capabilities of devices used to share meetingdata, technical prowess of the participants and other aspects.

SUMMARY

Aspects of the present disclosure are directed to remote meetingsolutions that address challenges including those discussed above, andthat are applicable to a variety of web-sharing applications, devices,systems and methods. These and other aspects of the present inventionare exemplified in a number of implementations and applications, some ofwhich are shown in the figures and characterized in the claims sectionthat follows.

Consistent with an embodiment of the present disclosure, a meetingsystem is implemented that includes a computer server arrangement withat least one processor. The computer server arrangement is configured toprovide a web-based meeting-group subscription option to potentialmeeting participants. A meeting scheduling data is received over aweb-accessible virtual meeting interface. The meeting scheduling dataincludes group identification information and meeting time information.In response to the group identification information, participantidentification information is retrieved for participants that subscribeto a meeting group identified by the group identification information.In response to the meeting time information and the participantidentifying information, audio connections are established forparticipants of the meeting. Merged audio from the established audioconnections is provided to the participants over the established audioconnections.

Consistent with another embodiment of the present disclosure, a meetingsystem is implemented that includes a computer server arrangement. Thecomputer server arrangement includes at least one processor and isconfigured to receive, from a social website, meeting scheduling datafrom the virtual meeting interface, the meeting scheduling dataincluding participant identification information and meeting timeinformation. A web-accessible virtual meeting interface is provided.Participant identification information is retrieved for participantsidentified by the participant identification information. In response tothe meeting time information and the participant identifyinginformation, audio connections are established for participants of themeeting. Merged audio from the established audio connections is providedto the participants over the established audio connections.

The above summary is not intended to describe each illustratedembodiment or every implementation of the present invention.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention may be more completely understood in consideration of thefollowing detailed description of various embodiments of the inventionin connection with the accompanying drawings, in which:

FIG. 1 depicts a virtual meeting system diagram consistent with anembodiment of the present disclosure;

FIG. 2 depicts a flow diagram for establishing and conducting a meeting,consistent with aspects of the present disclosure;

FIG. 3 depicts a data flow diagram for virtual meeting hostingimplementations involving multiple meetings, consistent with embodimentsof the present disclosure;

FIG. 4 depicts a user interface that relates to selection of meetingdetails, consistent with an embodiment of the present disclosure;

FIG. 5 depicts a user interface that relates to setting of meetingoptions, consistent with an embodiment of the present disclosure;

FIG. 6 depicts a user interface that relates to selection of dial inmeeting number(s), consistent with an embodiment of the presentdisclosure;

FIG. 7 depicts a user interface that provides for the addition ofparticipants and the selection of a host and a moderator, consistentwith an embodiment of the present disclosure;

FIG. 8 depicts a user interface for managing, viewing and configuringmeetings, consistent with an embodiment of the present disclosure;

FIG. 9 depicts options for connecting to audio portions of a meeting,consistent with an embodiment of the present disclosure;

FIG. 10 depicts an interface for an active meeting, consistent with anembodiment of the present disclosure;

FIG. 11 depicts an interface that is provided to allow for contentsharing, consistent with an embodiment of the present disclosure;

FIG. 12 shows an example use of the content sharing box, consistent withan embodiment of the present disclosure; and

FIG. 13 shows an example of a virtual meeting architecture, consistentwith an embodiment of the present disclosure.

While the invention is amenable to various modifications and alternativeforms, specifics thereof have been shown by way of example in thedrawings and will be described in detail. It should be understood,however, that the intention is not to limit the invention to theparticular embodiments described. On the contrary, the intention is tocover all modifications, equivalents, and alternatives falling withinthe spirit and scope of the invention.

DETAILED DESCRIPTION

Aspects of the present disclosure are directed to remote meetings andrelated approaches, their uses and systems for the same. While thepresent invention is not necessarily limited to such applications,various aspects of the invention may be appreciated through a discussionof various examples using this context.

The present disclosure includes a discussion of meeting/conferencingsolutions that are collectively referred to as a “virtual meeting”solution. The term virtual meeting implies that the participants arevirtually attending by virtue of the physical absence from a centralmeeting location; however, the present disclosure is not so limited.Indeed various aspects of the present disclosure can be implemented withall meeting participants located within the same room.

Embodiments of the present disclosure relate to a virtual meetingsolution that provides a number of meeting features to users ofweb-browsing applications (e.g., Microsoft's Internet Explorer®,Firefox®, Google's Chrome and Apple's Safari®). Particularimplementations afford the participants the meeting features as part ofa solution that runs within the browsers (e.g., in the absence oflocally installed applications or plug-ins). Other aspects relate toallowing users to establish a meeting, start a meeting and/or join ameeting by selection of a single icon (e.g., one click of mouse).

Consistent with other embodiments of the present disclosure, the virtualmeeting solution facilitates establishing telephonic communications withparticipants. The telephonic communications can include, withoutlimitation, calling participants usinglandline/Public-Switched-Telephone Network (PSTN) connections, cellularconnections, Voice-over-Internet Protocol (VoIP) connections, streamingvideo feeds and combinations thereof. Specific implementations allow thedialing times for the participants to be scheduled ahead of timeaccording to the meeting start time or other criteria. Aspects of thevirtual meeting solution allow the dial times to be controlled in avariety of different manners. For instance, the participants can selectthe time they wish to be called. Another option allows the meetingorganizer to specify the call times for one or more of the participants.

In certain implementations the virtual meeting solution implements acall-profile to contact meeting participants. One aspect of thecall-profile includes auto-retry parameters that can be implemented inthe event that a dial-out attempt fails to reach a particularparticipant. These auto-retry parameters can include the intervalbetween retries, the number of retries and alternate numbers to call.The alternate call numbers can be implemented as call-preference orderthat the virtual meeting traverses when attempting to contact aparticipant. Other aspects of the call-profile can indicate the bestnumber to reach a particular participant as a function of time, type ofmeeting or other factors.

Embodiments of the present disclosure also relate to aspects relating togiving meeting participants the ability to dynamically select otherparticipants that are to be contacted. The virtual meeting solutionautomatically calls the selected participants to add them to the ongoingmeeting. This allows for a meeting to grow naturally by addingparticipants as necessary without requiring contacting the participantin some other manner to have them call into the meeting. In certainimplementations, the called party is absolved from having to enter apass code. The meeting can remain relatively secure by using the callednumber as a confirmation of the caller's identity. The virtual meetingis particularly powerful in that it provides for International callingof participants.

While not limited thereto, the virtual meeting solution can be used asan enhanced telephone service. In this regard, an individual can use thevirtual meeting solution to call individuals and talk using voicecommunications only; however, the virtual meeting solution allows forthe individuals to use the various other data sharing and participantadding features at any point in the conversation. As such, the virtualmeeting solution can be particularly useful for impromptu meetingsand/or sharing of data between individuals on a telephone call.

Aspects of the present disclosure relate to the use of a virtual meetingsolution that coordinates voice data to and from the multipledistributed call points within a single meeting. This coordination canbe implemented, for instance, using VoIP services so as to controllong-distance-type fees. Aspects of the present disclosure use variousquality of service (QoS), quality of experience (QoE) and/or monetarycost considerations to determine the preferred calling solution.

Consistent with one embodiment of the present disclosure, the virtualmeeting solution modifies the Caller Id information to provide a calledparticipant with information about the meeting. This information caninclude the name of the meeting, the purpose of the meeting, the sourceof the meeting (e.g., hosting business) or connection information usefulfor accessing the meeting through a web browser.

A particular implementation of the present disclosure relates to a userinterface that operates native to a web-browser. Such an implementationallows participants to fully participate in the meeting without firstdownloading and/or installing customized software. This is particularlyuseful as participants can be dissuaded from installing such softwaredue to security risks of third-party software. This also lowers thebarriers (e.g., for time, effort and technical knowledge) for meetingparticipants. For instance, a user does not need to install anapplication for each different computer/device. Moreover, for securityreasons many businesses prohibit their employees from installingapplications on their computers, thereby introducing another barrier topotential participants. In another instance, plug-ins often cease towork properly when the underlying browser version changes, and thus mayrequire upgrading.

Consistent with an implementation of the present disclosure, the userinterface operates native to a web-browser by implementing themeeting/interface functionality within a browser supported codingenvironment. A specific example is a Flash framework in which a numberof applications are written using Flash (e.g., Version-10).

Data transfers from within the web-browser environment can beimplemented using a number of suitable transmission techniques andprotocols. A few, non-limiting, examples include HTTP/HTTPS transfers aswell as RTP, RTSP, RTMP (Real-Time Messaging protocol) and RTMPT (RTMPthrough HTTP Tunneling).

Aspects of the present disclosure are directed toward sharingparticipant content. The content sharing can be implemented asfiles/documents that are accessible from within the web-browserinterface. Participants can upload content to be shared with otherparticipants. This uploading can be controlled by the meeting organizer,who has the ability to set upload restrictions as desired.

Another sharing aspect of the present disclosure allows one or moreparticipants to share an active view of their own display screen. Forinstance, a participant can share his entire desktop, allowing otherparticipants to see everything displayed on his computer screen. This,however, is not always desirable as there may be additional informationdisplayed that is superfluous to the meeting, private to the sharingparticipant or confidential. Thus, a particular implementation allowsfor the sharing participant to select specific aspects for sharing. Inone instance, the selection can be limited to a particular window orapplication. In another instance, a customizable floating box/window isprovided that can be moved over any portion of the display so as todefine the portion that is to be shared. Controls allow for the sharingto be stopped, started and/or paused as desired. In certainimplementations of the present disclosure, a participant can relinquishcontrol over a shared document to one or more remote participants.Combinations thereof are also possible, such as limiting sharing to aspecific window, further limited by a customizable selection therein.

The present disclosure also relates to efficient and intuitivemechanisms for starting the meeting. In particular implementations, ameeting can be started by clicking on a single icon (e.g., an iconwithin a calendar displaying the meeting). The meeting starts accordingto default conditions, preset conditions, prompts for start criteriaand/or uses predictive start criteria. The start aspects can includeautomatic calling of participants, merging of participants into a singleteleconference, starting video feed, providing shared documents and/orsharing desktop. This can be particularly useful for reoccurringmeetings having similar meeting setup requirements. The virtual meetingsolution allows the meeting organizer and participants to specify thatthe meeting is to be reoccurring and automatically copy startupparameters. The meeting organizer can also select previously definedmeeting parameters (e.g., by selecting and copying a prior meeting) whensetting up a meeting.

A particular implementation of such a one-click meeting feature allowsthe participants to first click create the meeting and then to start acreated meeting using a single click. Each participant can join themeeting using a single click. The simplicity of such a system isfacilitated by the various automated connection and sharing featuresdiscussed in more detail herein.

Particular implementations allow a meeting organizer to providemultiple/flexible call-in number for participants. The numbers can beselected based upon telephone-long distance call areas to allowparticipants to call-in without incurring long distance fees. Otheroptions allow the meeting organizer to specify toll-free numbers or evencharge numbers. Yet another possibility is to allow users to connectdirectly over the Internet (e.g., using VoIP and/or streaming video).This can be implemented using, for instance a computer that has amicrophone-speaker combination and access to the Internet, although manyother devices provide VoIP-type capabilities.

Aspects of the present disclosure relate to assignable control ofvarious meeting rights to participants by a moderator/meeting owner. Thevirtual meeting solution can be configured to allow for significantflexibility regarding assignable rights. For instance, a first group ofparticipants can be allowed full audio rights, including the ability tolisten and speak as part of the meeting. A second group of participantscan be given limited (e.g., listen only) or no audio rights. Otherrights include the ability to invite new participants and/or to haveparticipants be called to join the meeting. One or more participants canalso be given remote control over another participant's computerallowing them to present shared content therefrom. In a particularimplementation, different control profiles can be established forcontrol over a set of such aspects. Participants can then be groupedaccording to the desired profile. In one instance, this can beimplemented by providing a viewable list of participants and the controlprofiles. A moderator can then move participants into the proper controlprofile by dragging and dropping the participant into the proper controlprofile.

Embodiments of the present disclosure relate to audio/video recordingsof a meeting session. In one implementation, the recording includesinputs from each of the participants. This can be accomplished byreceiving audio/video data streams from each participant and mergingthem into a single recording. In other instances, input from a subset ofparticipants can be excluded from the recording. The recordings can thenbe stored for access via a web browser including, but not limited to, aweb browser running a version of the virtual meeting solution. Thevirtual meeting solution can store a link to the meeting in a calendar,allowing a participant to access the recording from a calendar where themeeting was originally scheduled from.

Aspects of the present disclosure relate to interactions betweenmeetings and other applications for communication and/or scheduling. Forinstance, the virtual meeting solution can be configured to synchronizeand otherwise integrate with a number of calendaring solutionsincluding, but not limited to, a Microsoft Exchange server, Googlecalendar program or other calendaring programs. The virtual meetingsolution also handles meeting requests from various sources using, forinstance, the iCalendar (.ics) protocol. The invitations can be receivedas email, hyperlinks, or other mechanisms. A virtual meeting applicationcan be installed to interface with an application programming interface(API) for a particular calendar program. When a meeting is added orotherwise detected the virtual meeting application provides options tosetup a virtual meeting using the existing meeting details as thedefault meeting settings, which can be modified thereafter. Thus,existing meeting participants can be imported into a virtual meeting byuploading to a virtual meeting server hosting the meeting details. Thisis particularly useful for providing a seamless meeting schedulingbetween multiple applications.

In one instance, a virtual meeting application accesses contact listsfrom email, telephone or other programs and adds the contacts to thevirtual meeting solution. The contacts can then be used at any locationthrough the web interface.

In other implementations contact lists can be developed using socialwebsite lists, such as those provided by Facebook®, Linked-in®,Twitter®, Flixster® or Myspace®. An application exports names and otheravailable information from the social website. Other applicationsautomatically invite members of groups to associate meetings.

One embodiment of the virtual meeting application is implemented withonline dating services. A consideration for such services is maintaininga level of anonymity while providing a manner with which potentialcouples can communicate. For instance, a first participant may wish tospeak with another participant before deciding to commit to a date. Thedating service provides the name and profile of the participants, butdoes not disclose the telephone number. Nevertheless, the virtualmeeting application can be used to call one of the participants. Unlikevarious other implementations discussed herein, the actual telephonenumber is not displayed to the calling party/meeting organizer.Moreover, the called party can choose to call back using the virtualmeeting solution, also without direct knowledge of the other party'stelephone number. Either party can deny further calls from the othershould they decide not to follow-up with further communications. Thus,the parties can have several conversations before they provide personalinformation, such as their respective telephone numbers. Moreover, theparties can use video, share documents, use chat services, and sharevarious types of information (e.g., links to possible options meetingplaces) through the use of the virtual meeting solution.

Particular implementations synchronize meetings information with acalendar-providing server application, such as using Internet MessageAccess Protocol (IMAP), Post Office Protocol (POP, POP3) or otherprotocols to access data stored on an email/calendar (e.g.,Microsoft-Exchange) server. This can include downloading or uploadingmeeting schedules from the server.

Embodiments of the present disclosure relate to simultaneous meetingsbeing implemented for a single attendee. The hosting meeting serverrecognizes that an attendee is listening to multiple meetingssimultaneously and merges the audio into a single audio transmission.The attendee can dynamically mute or adjust the volume for one or moreof the meetings thereby allowing for movement between the two meetings.

Consistent with another embodiment of the present disclosure, thevirtual meeting solution provides meeting participants with the optionto multicast the meeting to others. The multicast of the meeting can beimplemented so as to originate from the server or from the meetingparticipant's remote device as selected by the user. Each user cancontrol the specifics of what is multicast including the addition ofcontent to the multicast stream, such as a personal commentary on thehappenings of the meeting. Certain implementations provide a centralizedlocation from which meeting participants can post their multicast streaminformation for others to view and select.

In some instances, the virtual meeting solution incorporates the abilityto share images, audio and other data-types through the chat portion ofthe interface. As the chat interface allows for private messagingbetween less than all of the meeting participants, this functionalityallows for meeting participants to share information without clutteringthe main meeting content with information from various participants thatmay wish to share information with each other, but not with the entiretyof participants in the meeting.

Other aspects of the present disclosure relate to subscribing to meetinggroups. After such a subscription is implemented, the subscribers arethereafter automatically invited to meetings scheduled for the meetinggroup. In this manner, the meeting organizer does not need to invite, orotherwise keep track of, the list of participants for the meeting.Instead, meeting participants control whether or not they will beinvited to a meeting. For various implementations, access to publishedmeetings can be controlled/allowed as a function of whether or not asubscriber has paid for access to the meeting.

A relatively powerful application of such a participant-controlledsubscription model relates to a meeting board for which potentialparticipants can visit to identify and subscribe to meetings for whichthey are interested. In addition to subscribing to individual meetings,the participants can subscribe to meeting groups to thereafter beautomatically invited to meetings falling into the particular groups.The meeting board can be accessed through a website. Meeting organizerscan publish meetings and meeting groups for participants to review andsubscribe. Meeting participants access the meeting board, search fordesired content, and subscribe thereto. Meeting organizers can choose tohave a notification of their published meetings sent to potentialparticipants so that they are made aware of the meeting. The publishedmeetings can each be given a distinct website address that can beprovided as part of the invitation and can be used by the meetingorganizer to direct participants to the proper published meeting.

A particular implementation of such a subscription-based model isparticularly useful for teaching applications. Students can besubscribed to meeting groups according to classes for which they areregistered. When a teacher or other meeting organizer schedules ameeting, they can designate the group for which the meeting is attended.Subscribers of the meeting are automatically invited to the meeting.This can also include automatically calling the meeting participants atthe meeting time, sending an email of meeting details, adding themeeting to calendar programs, as well as other aspects discussed herein.To facilitate control of which participants are subscribed to whichgroups, a simple interface is provided for meeting groups to begenerated, participant lists to be updated and for meeting organizers tohave access rights to create meetings for the appropriate groups. Thisinterface allows for uploading of data formatted such that it definesgroups and associated participants.

Other implementations of a subscription-based model are particularlyuseful for public meetings, such as government meetings/hearings thatare open to the public. The meeting can be opened (e.g., during aspecified time period) to the participants to allow for feedback. Thiscan be controlled by queuing remote-participants that requestparticipation (e.g., participants that wish to ask questions or provideinput). Each remote-participant can be given an opportunity to speak orotherwise provide input.

A specific implementation relates to integrating meeting functions withsocial websites. Social websites (e.g., Facebook or MySpace) oftenprovide users with the opportunity to schedule events, to invite friendsand/or to establish groups that others can join. Aspects of the presentdisclosure relate to integration of the virtual meeting solution withsuch social websites. In one implementation, an application can beintegrated with the social website. The application can allow aparticipant to create an event within the social website parameters.When users are invited and/or join the event, the applicationautomatically adds the users to the virtual meeting information. Whenthe event time is reached, the virtual meeting can establish connectionswith the users by accessing the virtual meeting information andresponding accordingly. In another implementation, users can joingroups. When new events/meetings are created for the groups, theassociated users can be automatically added to the events/meetingswithin the virtual meeting environment.

In a particular implementation of the present disclosure, securityinformation is passed from the social website to the virtual meetingsystem to confirm the participants' identities. For instance, socialwebsites often use username and password security features. The virtualmeeting system can verify a user's identity upon receiving verificationfrom the social websites. This can be particularly useful for reducingthe number of times a participant must provide security information andfor limiting electronic meetings to be generated nefariously (e.g.,spamming meetings from unknown persons).

Embodiments of the present disclosure relate to feedback mechanisms forparticipants of a meeting. A particular, non-limiting example, involvesa survey that is presented to meeting participants after the meeting isconcluded. Participants provide responses to the survey and theseresults can then be provided to the meeting organizer. This isparticularly useful for meetings in which the participants are unknownto the organizer, such as may be the case with the subscription-basedimplementations. The meeting organizer can configure and design thesurvey or select from default surveys provided as part of the virtualmeeting solution.

Embodiments of the present disclosure relate to an application runningon a computer, mobile phone or similar device that can be used toautomatically launch a web-browser when receiving an incoming call fromthe virtual meeting solution. For instance, the application can detectcertain information within the caller-id that identifies the incomingcall as corresponding to a meeting. The application can thenautomatically launch the meeting application or launch in response tothe acceptance of the call. In certain implementations, the caller-idcan contain information useful for directing the web-browser to theappropriate meeting. For instance, the caller-id can contain a meetingidentification number recognized by the meeting-hosting server ascorresponding to the desired meeting. This can be supplemented oralternatively implemented using Short Messaging Service/MultimediaMessaging Service—(SMS/MMS) type messages to pass such data orautomatically launch a meeting.

Turning now to the figures, FIG. 1 depicts a virtual meeting systemdiagram consistent with an embodiment of the present disclosure.Conference server 102 provides a web-accessible virtual meetinginterface that can be accessed at remote participant locations 116, 118over a wide area network (WAN) 106, such as the Internet. Conferenceserver 102 provides audio, video, document sharing, desktop sharing andother aspects over WAN 106. Audio and other data can also be providedover standard telephone lines, such as a public switched telephonenetwork (PSTN) 104. In a particular implementation, the web-accessibleinterface is implemented such that it can run natively within standardweb-browsers. In particular, no installed application or plug-in isrequired other than the web-browser application itself Specificimplementations provide such functionality through a Flash-basedweb-site application hosted by the conference server 102.

The conference server 102 can be implemented using one or more computerprocessors executing stored program instructions. The various functionscan be distributed or shared between multiple computers or implementedusing a single computer depending upon the constraints of the system.Thus, the conference server 102 could reside in several locationssimultaneously by, for instance, sharing functions between differentphysical computers.

Remote participant locations 116, 118 include one or more devices (e.g.,112, 120 and 124) for accessing meeting data from conference server 102.Although meeting participants can attend the meeting through audio-onlyconnections (e.g., over the phone or using a computer with VoIPcapabilities), the examples depicted in FIG. 1 include at least onecomputer 112, 124 with an associated web browser 114, 122. Thisimplementation provides participants full access to a suite of meetingcapabilities and options while running natively within a web browser.Running natively within a web browser can be particularly useful forparticipants that are traveling. Often such traveling participantsaccess the meeting application using computers that are provided byothers, e.g., public computers available in hotels or computers at acustomer location. Such computers need not have a software applicationor plug-ins installed to provide access to the virtual meeting solution.This native aspect can also be particularly useful for participants thatdo not have installation rights to a particular computer, such as issometimes the case for security and other reasons.

Within the web-browser application, connections can be established totransfer a variety of meeting information. For instance, audio (e.g.,VoIP) connections can be established should the computer have speakersand/or a microphone; video connections can be established should thecomputer have display and/or a camera; data connections can beestablished to share documents, chat functions and other data. Thevirtual meeting solution can use a variety of different protocols toestablish such connections. In various implementations, SessionInitiation Protocol (SIP) is used to setup and tear down connections forstreaming audio or video. The streaming data can be transmitted withinthe RTP, RTSP, RTMP (Real-Time Messaging protocol) and RTMPT (RTMPthrough HTTP Tunneling) protocols. A particular implementation attemptsto use one of RTP, RTSP or RTMP and, if unsuccessful due to a firewall,network address translation (NAT) or otherwise, uses RTMPT to establishan HTTP tunnel. This preference for a non-tunneling protocol can beuseful as the use of HTTP tunneling can introduce additional delay.

In certain implementations, the audio content can be communicated usingvarious telephonic devices including, but not limited to, landlinetelephones, cellular telephones and VoIP telephones. The virtual meetingsolution provides options for participations to call into the meeting orto have the virtual meeting solution actively call-out to theparticipants. For instance, a meeting organizer can select one or morepotential participants and instruct the conference server 102 to callthe participants. The conference server 102 attempts to contact theparticipants by using an associated telephone number (or IP address).Participants that respond are provided with audio content from themeeting. If desired, a brief introduction can be presented along withoptions for the user to accept or decline entrance into the meeting. Inconnect with the call, the potential participants can also be sentmeeting connection information (e.g., in the form of a website UniformResource Locator (URL)) for accessing other aspects of the meeting, suchas shared documents, video and chat functionality. This meetingconnection information can be sent using, as non-limiting examples,email, SMS or MMS.

FIG. 2 depicts a flow diagram for establishing and conducting a meeting,consistent with aspects of the present disclosure. The meeting organizercreates meeting 202. This can be implemented through an interface thatis implemented native to a web-browser. The meeting organizer sets themeeting parameters 204, which can include the time, length, meetingdescription, as well as other factors. Participants are added to themeeting 206. In a first implementation, the meeting organizer selectsand adds participants to the meeting. These participants can be selectedfrom an existing contact list, newly created contacts or specified insome other manner, such as by email address or telephone number. Inanother implementation, the participants can add themselves to themeeting. For instance, a meeting organizer may post details about themeeting on a meeting board that lists meetings. Participants that areinterested in the meeting can then subscribe to the meeting.

Meeting participants can be notified of the meeting details 208. Thenotification can be implemented using, for instance, email, SMS, MMS, acalendar invite and/or a voice mail message. When the meeting start timearrives and/or the meeting organizer indicates that the meeting shouldstart 210, participants 224, 226, 228, 230, 232 are connected to oneanother using the virtual meeting solution. The participants can jointhe meeting by actively calling in to a telephone number (or IP addressfor VoIP connections) 220, 222 or can be called by the virtual meetingsolution. The ability to have multiple telephone contact numbers can beparticularly useful for meetings in which participant are located ingeographically disperse areas including different calling areas and/orcountries. For instance, call in numbers can be provided that are localto the participants, such that long distance or international callcharges can be avoided/lessened for the participants.

The virtual meeting solution also provides the ability to share 212 avariety of content in addition to audio. In a particular implementation,the sharing is implemented using a web interface 218 that runs native toa web browser application. The shared content can include, among otherthings, video content, chat sessions, images, documents, shared view ofdesktop, shared view of individual windows and/or shared view ofportions of a desktop. Other aspects relate to the ability to provideshared control 214 over meeting functions and/or remote control of aparticipant's computer. For instance, one or more participants can begiven the authority to perform functions such as inviting or removingparticipants, sharing content and audio speaking rights. Moreover, aparticipant can give control over their computer to a remoteparticipant. This can be useful for allowing remote configuration,editing and display of content such as might be provided by aspreadsheet application.

The meeting completes 216 and terminates the connections betweenparticipants. Meeting completion can be indicated by the meetingorganizer, by all participants leaving the meeting or after a prescribedtime has been reached.

FIG. 3 depicts a data flow diagram for virtual meeting hostingimplementations involving multiple meetings, consistent with embodimentsof the present disclosure. Aspects of the virtual meeting solution takeadvantage of the ease with which meetings can be created and with whichthe meetings can be controlled. This can be particularly useful fororganically generated meetings that are not necessarily planned ahead oftime. Moreover, aspects are particularly useful for implementingmultiple simultaneous meetings, which can be structured according to ahierarchical meeting structure.

In one implementation a primary meeting 308 can be started with meetingparticipants 324, 326, 328, 330. This meeting can provide some or all ofthe various features of the present disclosure. Moreover, meetingparticipants may wish to establish meetings 306, 310 that include asubset of all the meeting participants of the primary meeting 308, oreven additional meeting participants 332 not otherwise part of theprimary meeting. These meetings are labeled as private meetings becausethey do not necessarily include each participant of the primary meeting.Moreover, the meeting organizer may have no knowledge of the privatemeeting. The participants have the freedom to establish the privatemeetings and, within the private meetings, to share information.

For instance, a primary meeting may be a relatively open/public meetinghaving many participants. In such an instance restrictions on sharing ofcontent may be placed on many of the participants (e.g., input from toomany participants could create a confusing and uncontrollableenvironment). These participants may still wish to share informationbetween one another while attending the primary meeting. The virtualmeeting solution provides the participants with the ability to establisha private meeting 306, 310 while still being part of the primary meeting308. The private meeting could provide the participants with the abilityto share information and to discuss topics being presented in theprimary meeting 308.

Another meeting type is referred to as a sub-meeting 302, 304. Thesub-meeting is conceptually different from a private meeting in that itis visible as a meeting from participants of the primary meeting andthat the control/setup and other aspects stem from the primary meeting.The participants 312, 314, 320, 322 of sub-meetings can each be commonto the primary meeting 308 or one or more can be new in the sense thatthey are not part of the primary meeting. As an example, a primarymeeting may be established for addressing a relatively broad subject.The participants of the primary meeting agree that the subject matter isbest addressed once solutions/answers are found for several differentsub-issues. Sub-meetings can then be formed to work on the identifiedissues and after the sub-meetings convene the primary meeting can resumegoing forward with the findings of the sub-meetings. The virtual meetingapplication is also flexible enough to allow for sub-groups to formadditional sub-groups therefrom. The primary meeting provides aninterface that lists the various sub-meetings and allows a meetingorganizer or other participants to select which, if any, sub-meetingsthey wish to join. In this manner, sub-meeting progress can be monitoredand findings of sub-groups can be shared by having participants movefrom between sub-meetings. Content (e.g., documents, chat transcriptsand other work product) from the sub-meetings can be shared with theprimary meeting participants. This allows for seamless transitioningbetween sub-meetings and the primary meetings.

An example implementation for the primary/sub-meeting hierarchicalstructure is a teaching session. The primary meeting can be led by amain speaker/teacher. At times during the meeting groups of students canbe split into various sub-meetings to work on a problem associated withthe primary meeting/lecture. The sub-meetings could be led by teachingassistants or by the students themselves. The main speaker/teacher caneasily move between sub-meetings to check on the status and to assist asneeded. Moreover, students can return to the primary meeting to askquestions of the main speaker/teacher.

Other aspects of the present disclosure relate to the option for aparticipant 324 to multicast the meeting to multicast subscribers 316,318. The content of the primary meeting 308, a private meeting 306, 310or a sub-meeting can be sent within the multicast stream. The multicaststream can be sourced from the participant's computer or from aconference server.

The virtual meeting solution also allows a meeting organizer to disablethe sharing capabilities for meeting participants. This can includelimitations on forming private or sub-meetings.

FIGS. 4-12 depict screen shots of various aspects of the virtual meetingthat can be provided to participants. Although not necessarily limitedto such an implementation, these aspects can be provided from aweb-driven application that runs natively within a web-browser.

FIG. 4 depicts a user interface related to selection of meeting details,consistent with an embodiment of the present disclosure. In oneembodiment, a meeting setup contains five steps 402: providing details,setting of options, selection of dial in numbers, adding of participantsand review of the meeting details. The options presented as part of thefirst step include, for instance, meeting title, meeting purpose,meeting description, meeting time/date, meeting time zone and whetherthe meeting repeats (e.g., daily, weekly or monthly). At any point inthe process of setting up a new meeting, the meeting can be saved as adraft. At a later time, the saved draft can be recovered and theremaining setup steps can be implemented.

FIG. 5 depicts a user interface that relates to setting of meetingoptions, consistent with an embodiment of the present disclosure. Themeeting options, as depicted in FIG. 5, include a few possibilities formeeting options. These options include enabling of chat functions andpresentation sharing. Other options relate to whether moderator presenceis required for the meeting, whether international dial outs are allowed(as toll charges might be assessed) and whether audio options forjoining are provided to participants that connect using a web-interface.Options are also provided for recording of the meeting content includingwhether or not it is allowed, whether the recording is announced when aparticipant joins and whether or not an announcement is played whenrecording starts or stops. Participant-specific options include mutingof all participants, allowing participants to invite others and whetherparticipants are requested to RSVP to a meeting invite. Announcementoptions include whether or not it should be announced when participantsjoin or leave a meeting. These options represent some of the possibleoptions that can be presented and are not limited to the variety ofoptions that can be provided to a meeting organizer.

FIG. 6 depicts a user interface that relates to selection of dial inmeeting number(s), consistent with an embodiment of the presentdisclosure. The options depicted in FIG. 6 shows two dial in numbers asoptions for selection. The suggested numbers can be presented based upondefault settings of the meeting organizer, meeting organizer location,cost or other factors. If desired, additional numbers can be added fromthe available numbers.

In another embodiment, the dial in numbers can be presented afterparticipants have been added. The virtual meeting solution can thenautomatically suggest dial in numbers based upon the locations of theparticipants.

FIG. 7 depicts a user interface that provides for the addition ofparticipants and the selection of a host and a moderator, consistentwith an embodiment of the present disclosure. Step four allows themeeting organizer to add participants to the meeting. The participantscan be manually entered, including adding such information as name,telephone number, email address and the like. Alternatively,participants can be added from a contact list. This contact list can bedirectly populated by the meeting organizer and by saving past manuallyentered participants to the contact list. The contact list can also beimported from existing programs, such as email contact lists. In aparticular implementation, the contact list can be maintained byaccessing an email server running an application, such as a Microsoftexchange server.

In addition to adding the participants, the host and moderator can beselected. In the configuration shown, the host is given permission toshare the desktop and to control which other participants can sharedesktop or other information. The moderator is given control overrecording functions, content sharing rights, and other meeting controls(e.g., adding, removing, or muting participants). An invitation messagecan also be provided to explain the details of the meeting to theinvited participants.

The review process (not shown) shows the details of the informationentered in steps 1-4 and provides the meeting organizer with theopportunity to confute that the meeting is correctly configured.

FIG. 8 depicts a user interface for managing, viewing and configuringmeetings, consistent with an embodiment of the present disclosure. Theinterface includes a past meeting section that shows meetings that havealready occurred and concluded. In this section it is possible to selecta meeting and to retrieve information about the meeting. It is alsopossible to copy meeting information from a previous meeting and therebycreate a new meeting starting from the same meeting settings. Alsodisplayed and accessible in a similar manner are current meetings andfuture meetings.

A calendar area shows scheduled meetings, whether in the past, thefuture or the present. The calendar can also show events other thanvirtual meetings. These events can be added manually orimported/synchronized with an external calendaring program, such as aMicrosoft exchange server. A message area can also be provided. Messagescan include meeting invitations or communications between users of thevirtual meeting solution.

FIG. 9 depicts options for connecting to audio portions of a meeting,consistent with an embodiment of the present disclosure. Thenon-limiting implementation depicted in FIG. 9 provides a participantwith options when joining a meeting. For instance, a participant canchoose to connect through VoIP using the same computer as theweb-browser used to join the meeting or to have the meeting call theparticipant's telephone number. A third option is to not connect througheither of these options. A participant might choose this third option ifthey were calling into the meeting, if audio was not desired, or ifseveral people were sharing a speaker phone, but had individualcomputers.

FIG. 10 depicts an interface for an active meeting, consistent with anembodiment of the present disclosure. At the top of the page are tabsthat represent different interface screens, such as a home page (e.g.,FIG. 8) and one or more active meetings. FIG. 10 depicts one such tabfor an active meeting. A chat box area allows users to share textcommunications in real time. Also shown is a participant list that showswhich participants are currently in the meeting. In this instance, onlyone participant is currently in the meeting. A dial out selection optioncan be used to request that one or more participants be called so thatthey can join the meeting. This can be implemented by a simple click ofthe telephone icon. The corresponding participant telephone number isthen called. If desired, each participant can have multiple telephonenumbers, which can be selected based upon a user profile and/orsequentially called in the case that the participant is not able to bereached.

General meeting details are provided for viewing along with a contentsharing option. If a meeting host is sharing content, the content willappear in the tab for viewing by all participants. A host can beginsharing by clicking on the content sharing options.

FIG. 11 depicts an interface that is provided to allow for contentsharing, consistent with an embodiment of the present disclosure. When aparticipant that has sharing rights selects the content sharing option,they can be presented with several sharing options. For instance, theycan share their entire desktop, share a specified tab/application orshare content within a configurable/floating content sharing box. FIG.11 shows a content sharing box. This box can be moved and sized asdesired. When a content share presses the play option, whatever iswithin the box is shared with the meeting participants.

FIG. 12 shows an example use of the content sharing box, consistent withan embodiment of the present disclosure. The content sharing windowallows for certain parts of a document/window to be shared without therest being visible to the participants. Thus as shown, columns A, B andC and rows 1-29 would be shared, while data in other areas would not.This flexibility allows for simple control over what is shared to theparticipants. For instance, the sharing participant can see the entiredocument, but only share certain aspects. This can be particularlyuseful if the document contains confidential information or simply todraw the attention of the participants to only the shared area.

As discussed herein, it is also possible to share an entirewindow/application. The sharing participant selects a window from a listof currently available windows. The virtual meeting solution then sharesall viewable content of the selected window. In a particular embodiment,the adjustable content sharing window can be used in tandem with suchwindow sharing. The sharing participant again chooses to share aparticular window, but also uses an adjustable window to limit what isshared within the window. In this manner, there is a tiered sharingcontrol that limits sharing first to the selected window and thenfurther limited to selected portions therein. This can be particularlyuseful as a sharing participant may otherwise inadvertently switchwindows in a manner that changes what is shared using the adjustablecontent sharing window.

Consistent with a particular embodiment of the present disclosure,whiteboard-type functionality is provided to allow users tointeractively share content. This whiteboard feature allows users todynamically draw, highlight, underline or otherwise provide inputregarding shared content. For instance, using the whiteboard feature,the participants can highlight certain portions of presentations withfree-hand writing. The participants can control the size color andsensitivity of the highlighting tool. Whiteboard privileges can beeasily and quickly passed between participants. This can be very usefulin an online tutoring/classroom kind of environments. For instance,student participants can be given virtual opportunities to write on thewhiteboard, e.g., to point out aspects that are unclear to them, toexplain their understanding of shared content or as part of apresentation for the other students.

FIG. 13 shows an example of a virtual meeting architecture, consistentwith an embodiment of the present disclosure. Participants are allowedto access the virtual meeting solution through a web-interface 1302.Participants are identified and authenticated using a server 1306 (e.g.,virtual meeting portal). The authentication can be implemented, forexample, using an authentication server 1308, which can be implementedusing Microsoft Internet Information Services (IIS). A server 1304(e.g., a Customer Relationship Management (CRM) server), controls andtracks participant data including, for instance, accounts data (e.g.,contact information, relationship history and revenue), customer serviceinformation, such as customer queries and complaints, activities formanaging individual and group calendars and e-mail, and reports fromcustomer data. In a particular implementation, the CRM server 1304 isimplemented using Oracle WebLogic software.

As discussed herein, various aspects of the virtual meeting solution canbe provided to the participants natively to a web browser usingFlash-based applications (e.g., Flash 10). These aspects can includeVoIP functions and other data communications. In one instance, theFlash-based applications are provided by one or more Flash servers 1310(e.g., RedS open source servers).

A database server 1312 stores participant information, such as ordersand licensing status for various virtual meeting features. In aparticular implementation, database-server 1312 is implemented using anMS-SQL database. A CRM application server 1316 handles provisioning andconference data between multiple servers. Server 1316 accesses customerdata stored in a database server 1314. The server 1316 can beimplemented using various middleware, for example, Oracle Tuxedosoftware.

Provisioning server 1318 interacts with conference PBX server(s) 1320 toimplement realtime data connections between participants. The PBXserver(s) 1320 provide computer-telephone integration (CTI) functions.These functions, described in more detail herein, can include realtimemessaging and/or VoIP connections between computers, telephones,cellular phones and other communication devices. A file server 1322 canbe optionally implemented to provide meeting data recording, which canbe accessed at a later date by participants.

The specific software packages and arrangement of servers discussed anddepicted in connection with FIG. 13 provide a framework from whichvariations can be made. Thus, these aspects are not necessarilylimiting. For instance, server and database components can beimplemented as multiple computers, processors and memory devicesoperating in combination.

Aspects of the present invention are implemented using a variety ofprocessing circuits, logic, communications arrangements and combinationsthereof. Particular implementations use one or more specially configuredcomputer processors that execute instructions to perform one or more ofthe aspects discussed herein. Various portions can be implemented usingdiscrete or combinatorial logic, analog circuitry and using variousforms of tangible storage mediums.

The various embodiments described above are provided by way ofillustration only and should not be construed to limit the invention.Based upon the above discussion and illustrations, those skilled in theart will readily recognize that various modifications and changes may bemade to the present invention without strictly following the exemplaryembodiments and applications illustrated and described herein. Forexample, the methods, devices and systems discussed herein may beimplemented in connection with a variety of technologies such as thoseinvolving home computers, servers, laptops, cellular phones, personaldigital assistants, iPhones®, Blackberries® and the like. The inventionmay also be implemented using a variety of approaches such as thoseinvolving coordinated communications for public access. Suchmodifications and changes do not depart from the true spirit and scopeof the present invention, including that set forth in the followingclaims.

What is claimed is:
 1. A meeting system comprising: an internet protocol(IP) connections circuit configured and arranged to communicate dataincluding voice over internet protocol (VoIP) data with remote usersover an internet protocol network; a computer server arrangementincluding at least one computer processor connected to the IPconnections circuit, the computer server arrangement configured to:provide a web-based meeting-group subscription option to potentialmeeting participants via the IP connections circuit; provide aweb-accessible virtual meeting interface via the IP connections circuit;receive meeting scheduling data from the virtual meeting interface viathe IP connections circuit, the meeting scheduling data including groupidentification information and meeting time information, the meetingtime information specifying a time in the future; retrieve, in responseto the group identification information, participant identificationinformation for participants that subscribe to a meeting groupidentified by the group identification information; establish, inresponse to the meeting time information, to a current time and to theparticipant identification information, audio connections forparticipants of the meeting via the IP connections circuit, asidentified by the participant identification information; merge audiofrom the established audio connections; provide the merged audio to theparticipants over the established audio connections; and after providingthe merged audio to the participants, establishing a common sharedweb-accessible interface and providing the participants with access toshared content via the common shared web-accessible interface.
 2. Themeeting system of claim 1, wherein the computer server arrangement isfurther configured to provide the web-based meeting-group subscriptionoption as a website that participants can access via the IP connectionscircuit in order to view and subscribe to meeting groups and, inresponse to further meeting time information included in further meetingscheduling data and for a particular meeting group, to establish furtheraudio connections to participants subscribed to the particular meetinggroup using the web-based meeting-group subscription option.
 3. Themeeting system of claim 1, wherein the computer server arrangement isfurther configured to receive the group identification information froma social website via the IP connections circuit.
 4. The meeting systemof claim 1, wherein the computer server arrangement is furtherconfigured to allow a group organizer to add meetings that each includemultiple participants for the added meetings, the allowing beingresponsive to receiving group identification information identifying themultiple participants for the added meetings.
 5. The meeting system ofclaim 1, wherein the computer server arrangement is further configuredto provide, via the IP connections circuit, a website that allowscreation of meeting groups and subscription thereto by potential meetingparticipants.
 6. The meeting system of claim 1, wherein the web-basedmeeting-group subscription option includes one or more groups that areeducational classes.
 7. The meeting system of claim 1, wherein theweb-based meeting-group subscription option includes one or more groupsthat are for students of an educational class and wherein the computerserver arrangement is further configured to provide, via the IPconnections circuit, a teacher of the educational class with options foradding meetings for the educational class.
 8. The meeting system ofclaim 1, wherein the computer server arrangement is configured andarranged to: communicate with at least one of the meeting participantsvia VoIP using the IP connections circuit, and at least another one ofthe meeting participants via one of a Public-Switched-Telephone Network(PSTN) connection and cellular connection, and for one of the meetingparticipants, initiate a telephonic communication with the participantand establish an audio connection between a device used by theparticipant and the computer server arrangement in response to theparticipant accepting the initiated telephonic communication, and mergeaudio received from the participant with audio from the establishedaudio connections.
 9. The meeting system of claim 1, wherein thecomputer server arrangement is configured and arranged to identify andto announce the participants, prior to any of the participants accessingthe common shared web-accessible interface.
 10. The meeting system ofclaim 9, wherein the computer server arrangement is configured andarranged to generate and provide the participants with access to sharedcontent via a web-accessible interface, after identifying theparticipants and establishing the audio connections.
 11. The meetingsystem of claim 1, wherein the at least one computer processor isconfigured and arranged with the IP connections circuit to establish thecommon shared web-accessible interface based upon the participantidentification information and the group identification information asreceived prior to the audio connections being established.
 12. A meetingsystem comprising: an internet protocol (IP) connections circuitconfigured and arranged to communicate data including voice overinternet protocol (VoIP) data with remote users over an internetprotocol network; a computer server arrangement including at least onecomputer processor, the computer server arrangement configured tocommunicate via the IP connections circuit to: receive, from a socialwebsite, meeting scheduling data, the meeting scheduling data includingparticipant identification information and meeting time informationidentifying a time in the future; provide a web-accessible virtualmeeting interface; retrieve participant identification information forparticipants identified by the participant identification information;establish, in response to the meeting time information, a current timeand the participant identification information, audio connections forparticipants of the meeting; merge audio from the established audioconnections; and provide the merged audio to the participants over theestablished audio connections, wherein the at least one computerprocessor is configured and arranged with the IP connections circuit to:prior to the participants accessing a common shared web-accessibleinterface, retrieve the participant identification information andestablish the audio connections, and after establishing the audioconnections, provide the participants with access to shared content viathe common shared web-accessible interface.
 13. The meeting system ofclaim 12, wherein the at least one computer processor is configured andarranged with the IP connections circuit to provide the participantswith access to shared content via the common shared web-accessibleinterface by identifying the participants based upon the retrievedparticipant identification information.
 14. The meeting system of claim12, wherein the computer server arrangement is further configured topresent a survey to meeting participants via the IP connections circuitafter the meeting is concluded and to provide results of the survey to ameeting organizer.
 15. The meeting system of claim 12, wherein thecomputer server arrangement is further configured to receive averification of a participant's identity from the social website via theIP connections circuit, and to restrict access to a calendar of theparticipant in response to the verification.
 16. The meeting system ofclaim 12, wherein the web-accessible virtual meeting interface runsnative to a web browser.
 17. The meeting system of claim 12, wherein thecomputer server arrangement is further configured to initiate atelephone call to participants of the meeting from which audioconnections are established.
 18. The meeting system of claim 12, whereinthe computer server arrangement is further configured to provide awhiteboard, via the IP connections circuit, that allows users todynamically draw, highlight, and underline shared content.
 19. Themeeting system of claim 12, wherein at least some of the establishedaudio connections are Voice over Internet Protocol (VoIP) connections.